#ifndef INTERFACEPAINTER_H
#define INTERFACEPAINTER_H

#include "qsfmlcanvas.h"
#include <Shinygami/ui.hpp>

class InterfacePainter : public QSFMLCanvas
{
    Q_OBJECT
public:
    explicit InterfacePainter(QWidget *parent = 0);
    ~InterfacePainter();

    virtual void OnUpdate();
    void SetTextureManager(Shiny::TextureList* l) { _textureManager = l; }
    Shiny::Widgets::Ui* Ui(void)                  { return (_ui);        }

protected:
    virtual void mousePressEvent(QMouseEvent*);
    virtual void mouseReleaseEvent(QMouseEvent*);

signals:

public slots:
    void LoadUi(Data);
    void NewUi(void);

private:
    Shiny::Widgets::Ui* _ui;
    Shiny::TextureList* _textureManager;
};

#endif // INTERFACEPAINTER_H
